// import { Directive, EventEmitter, Input, ChangeDetectorRef, Output, ElementRef, HostListener, Inject, Renderer2 } from '@angular/core';
// import { NgModel } from '@angular/forms';

// @Directive({
//     selector: '[appTrim]'
// })
// export class TrimDirective {
//     constructor(
//         private renderer: Renderer2,
//         private elementRef: ElementRef,
//         private ngModel: NgModel) { }

//     @HostListener("blur")
//     onBlur() {
//         let value = this.ngModel.model;
//         console.log('5445455454')
//         if (value) {
//             value = value.trim();
//             this.renderer.setProperty(
//                 this.elementRef.nativeElement, "value", value);
//             this.renderer.setAttribute(
//                 this.elementRef.nativeElement, "value", value);
//             this.ngModel.update.emit(value);
//         } else {
//             this.renderer.setProperty(
//                 this.elementRef.nativeElement, "value", null);
//             this.renderer.setAttribute(
//                 this.elementRef.nativeElement, "value", '');
//             this.ngModel.update.emit("");
//         }
//     }
// }

import { Directive, HostListener } from '@angular/core';
import { NgControl } from '@angular/forms';

@Directive({
  selector: '[appTrim]'
})
export class TrimDirective {
  constructor(private $control: NgControl) {
    console.log('32323232')
  }
  

  // 监听元素的keydown事件
  @HostListener('keydown', ['$event'])
  keydown() {
    console.log('32323232')
  }
  // 监听元素的keyup事件
  @HostListener('keyup', ['$event', '$event.target'])
  keyup() {
    console.log('32323232')
  }

}
